This disclosure pertains to application release orientation baselines, and more particularly, to dynamic release baselines in a continuous delivery environment
Infrastructure configuration management solutions provide a mechanism to define and maintain a configuration state. Examples of infrastructure configuration management solutions include OpsCode Chef, Puppet Labs Puppet, CFEngine, Salt, Ansible, etc. These solutions establish and maintain configuration baselines at an infrastructure level and report on them at node type levels (e.g., Web Servers, Application Servers, Database Servers).
Configuration management solutions often adhere to a declarative or promise approach, whereby client agents on nodes check state against master servers that they are subscribed to for configuration control. In the case of Chef, the Chef client checks in with the Chef Server for its “Cookbooks” and “Recipes.” If a definition has changed on the server side that applies to a Cookbook or Recipe that the client node is subscribed to, then the client can update, re-configure, or otherwise change itself to meet the configuration stipulated.
Additionally, if something has changed on the client due to a potential over-ride by an administrator or user, then those changes will be overridden and placed back into the state prescribed in the Cookbook or recipe. The configuration management solution can also provide a set of reports on this activity.
Release automation (RA) solutions also provide a mechanism to deploy custom developed applications by development teams onto server infrastructure. In some cases, these deployments may be on top of infrastructure that may be maintained by a configuration management solution. Release automation (RA) solutions orchestrate and control deployment of application components and their configuration settings across applications, versions of applications, individual deployments of those applications and deployments of those applications across many environments.